package com.stellar.auth.convert;

import com.stellar.auth.basic.entity.AuthUser;
import com.stellar.auth.basic.po.AuthUserPO;
import com.stellar.auth.controller.admin.authUser.vo.AuthUserRequestPageVO;
import com.stellar.auth.controller.admin.authUser.vo.AuthUserRequestVO;
import com.stellar.auth.controller.admin.authUser.vo.AuthUserResponseVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 系统用户信息表转换器
 *
 * @author Jqchan
 * @version 1.0
 * @date 2025-05-16 18:05:36
 */
@Mapper
public interface AuthUserConvert {

    AuthUserConvert INSTANCE = Mappers.getMapper(AuthUserConvert.class);

    AuthUser convert(AuthUserResponseVO responseVO);

    AuthUser convert(AuthUserRequestVO requestVO);

    AuthUser convert(AuthUserRequestPageVO requestPageVO);

    AuthUserResponseVO convert(AuthUser entity);

    List<AuthUserResponseVO> convertEntityToRespList(List<AuthUser> entities);

    AuthUserPO convertEntityToPO(AuthUser authUser);

    AuthUserResponseVO convertPOToResponseVO(AuthUserPO authUserPO);
}
